/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Gestores;

import Controller.EntityCanchaJpaController;
import Controller.EntityJugadorJpaController;
import Entities.EntityJugador;
import Negocio.Jugador;
import java.util.ArrayList;
import java.util.Iterator;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

/**
 *
 * @author Nico
 */
public class GestorJugador
{
    
//    public boolean agregarJugador(Jugador j)
//    {
//        EntityManagerFactory emf= Persistence.createEntityManagerFactory("persistence");//del XML saco ese String
//        EntityJugadorJpaController controllerJugador= new EntityJugadorJpaController(emf);
//        EntityJugador jugador= new EntityJugador(j.getNombre(), j.getApellido(), j.getTelefono(),j.getDni());
//        try
//        {
//           controllerJugador.create(jugador);
//           return true;
//        }
//        catch (Exception e)
//        {
//           return false;
//        }
//    }
    
    public boolean agregarJugador(EntityJugador jugador)
    {
        EntityManagerFactory emf= Persistence.createEntityManagerFactory("persistence");//del XML saco ese String
        EntityJugadorJpaController controllerJugador= new EntityJugadorJpaController(emf);
        //EntityJugador jugador= new EntityJugador(j.getNombre(), j.getApellido(), j.getTelefono(),j.getDni());
        try
        {
           controllerJugador.create(jugador);
           return true;
        }
        catch (Exception e)
        {
           return false;
        }
    }
    
    public boolean existeJugador(int id)
    {
        Jugador j;
        EntityManagerFactory emf= Persistence.createEntityManagerFactory("persistence");//del XML saco ese String
        EntityJugadorJpaController controllerJugador= new EntityJugadorJpaController(emf);
        ArrayList<EntityJugador> lista= new ArrayList<EntityJugador>(controllerJugador.findEntityJugadorEntities()); 
        Iterator iter= lista.iterator();
        while(iter.hasNext())
        {
          EntityJugador jugador= (EntityJugador)iter.next();
          if(jugador.getId()==id)
          {
             return true;
          }
        }
        return false;
    }
    public boolean existeJugador(String nombre)
    {
        Jugador j;
        EntityManagerFactory emf= Persistence.createEntityManagerFactory("persistence");//del XML saco ese String
        EntityJugadorJpaController controllerJugador= new EntityJugadorJpaController(emf);
        ArrayList<EntityJugador> lista= new ArrayList<EntityJugador>(controllerJugador.findEntityJugadorEntities()); 
        Iterator iter= lista.iterator();
        while(iter.hasNext())
        {
          EntityJugador jugador= (EntityJugador)iter.next();
          if(jugador.getNombre().compareTo(nombre)==0)
          {
             return true;
          }
        }
        return false;
    }
    public boolean existeJugadorApellido(String apellido)
    {
        Jugador j;
        EntityManagerFactory emf= Persistence.createEntityManagerFactory("persistence");//del XML saco ese String
        EntityJugadorJpaController controllerJugador= new EntityJugadorJpaController(emf);
        ArrayList<EntityJugador> lista= new ArrayList<EntityJugador>(controllerJugador.findEntityJugadorEntities()); 
        Iterator iter= lista.iterator();
        while(iter.hasNext())
        {
          EntityJugador jugador= (EntityJugador)iter.next();
          if(jugador.getApellido().compareTo(apellido)==0)
          {
             return true;
          }
        }
        return false;
    }
    public Jugador getJugador(int id)
    {
        Jugador j=null;
        EntityManagerFactory emf= Persistence.createEntityManagerFactory("persistence");//del XML saco ese String
        EntityJugadorJpaController controllerJugador= new EntityJugadorJpaController(emf);
        ArrayList<EntityJugador> lista= new ArrayList<EntityJugador>(controllerJugador.findEntityJugadorEntities()); 
        Iterator iter= lista.iterator();
        while(iter.hasNext())
        {
          EntityJugador jugador= (EntityJugador)iter.next();
          if(jugador.getId()== id)
          {
              j= new Jugador(jugador.getNombre(),jugador.getApellido(),jugador.getTelefono(),jugador.getDomicilio(),jugador.getFechaNacimiento(),jugador.getDni());
              return j;
          }
        }
        return j;
    }
   
    
    public EntityJugador getJugador(String nombre)
    {
//        Jugador j=null;
        EntityJugador jugador=null;
        EntityManagerFactory emf= Persistence.createEntityManagerFactory("persistence");//del XML saco ese String
        EntityJugadorJpaController controllerJugador= new EntityJugadorJpaController(emf);
        ArrayList<EntityJugador> lista= new ArrayList<EntityJugador>(controllerJugador.findEntityJugadorEntities()); 
        Iterator iter= lista.iterator();
        while(iter.hasNext())
        {
         jugador= (EntityJugador)iter.next();
          if(jugador.getNombre().compareTo(nombre)==0)
          {
              return jugador;
          }
        }
        return jugador;
    }
    
     public ArrayList<EntityJugador> getTodosLosJugadores()
    {
//        Jugador j=null;
        EntityManagerFactory emf= Persistence.createEntityManagerFactory("persistence");//del XML saco ese String
        EntityJugadorJpaController controllerJugador= new EntityJugadorJpaController(emf);
        ArrayList<EntityJugador> lista= new ArrayList<EntityJugador>(controllerJugador.findEntityJugadorEntities()); 
        return lista;
    }
     
    public Jugador getJugadorXApellido(String apellido)
    {
        Jugador j=null;
        EntityManagerFactory emf= Persistence.createEntityManagerFactory("persistence");//del XML saco ese String
        EntityJugadorJpaController controllerJugador= new EntityJugadorJpaController(emf);
        ArrayList<EntityJugador> lista= new ArrayList<EntityJugador>(controllerJugador.findEntityJugadorEntities()); 
        Iterator iter= lista.iterator();
        while(iter.hasNext())
        {
          EntityJugador jugador= (EntityJugador)iter.next();
          if(jugador.getApellido().compareTo(apellido)==0)
          {
              j= new Jugador(jugador.getNombre(),jugador.getApellido(),jugador.getTelefono(),jugador.getDomicilio(),jugador.getFechaNacimiento(),jugador.getDni());
              return j;
          }
        }
        return j;
    }
    
     public boolean actualizarJugador(int id, EntityJugador jugador)
    {
      try
      {
         EntityManagerFactory emf= Persistence.createEntityManagerFactory("persistence");//del XML saco ese String
         EntityJugadorJpaController controllerJugador= new EntityJugadorJpaController(emf);
         controllerJugador.updateJugador(id, jugador);
         return true;
      }
      catch(Exception e)
      {
        return false;
      }
    }
    
       public boolean eliminarJugador(int id)
    {
       try
       {
         EntityManagerFactory emf= Persistence.createEntityManagerFactory("persistence");//del XML saco ese String
         EntityJugadorJpaController controllerJugador= new EntityJugadorJpaController(emf);
         //controllerJugador.deleteJugador(id, jugador);
         controllerJugador.deleteJugador(id);
         return true;
       }
       catch(Exception e)
       {
         return false;
       }
    }
}
